試験工程

システムの品質を作り込むのは設計工程ですが、システムの品質を確認し保証するのは試験工程です。

システムの試験は、ユーザにシステムを納入するシステムベンダー側のSEが行なう作業と考えられていますが、システムの開発を依頼するユーザ側も要求通りにシステムが出来上がっているかを確認する必要があり、これも試験作業の一つです。工程としては、システム開発V字モデルの運用テストの部分にあたります。運用テストは、システムをユーザに納品した後に行なわれるテストで、要件定義工程で定義された要件がすべて実装されていることをシステムベンダー側が確認する作業と、システムが実業務の中に組み込まれ問題なく運用できることをユーザが確認する作業という二面性があります。

品質を作り込むテストと最終確認するテスト

試験は、システムをユーザへの納品する前と納品した後の、大きく2つに分割されます。システムベンダーにとって、システムをユーザに納品し引き渡した後にプログラムの不具合が検出されることは、システム開発契約の不履行となり、場合によっては損害賠償請求を受けることにもなりかねません。ユーザに納品する前までに、システム品質を確実なものとすることが求められます。
そこで、システム開発V字モデルの単体テスト・結合テスト・総合テストという3種のテスト工程で、品質を確保しなければなりません。運用テストは、ユーザ環境で実行されるテストであり、この作業工程はシステム品質をブラッシュアップさせるものではなく、システム品質の最終確認をするものと位置づけられます。不具合等の問題を検出し、システムの品質を安定化させる工程としては、総合テストまでと考えます。

システム納品前のテスト作業

システム化への要求はプログラムという形で実現させることとなりますが、プログラムの設計作業と試験作業は通常SEが担当します。 SEは仕様(設計)書を作成して、PEにプログラミングを依頼し、そしてPEから納品されたプログラムをテストし仕様通りに製作されているかチェックをします。
ソフトウェアを開発する実務は、SEとPEで分業が行なわれており、作業を分担しています。 細菌のプログラム開発は、仕様書作成はSEが行ない、プログラム作成は外注先のPEが行なうというスタイルになっています。そこで、プログラムの品質は、プログラムをコーディングしたPEと、プログラムの仕様書を作成したSEが、確認することとなります。

ユーザにシステムを納品する主体となるSEは、プログラム作成を外注先に委託していますので、外注先から受け取ったプログラムは納品品質をクリアしている成果物として扱います。製作時点のプログラムの品質は外注先が確認済であり、それをプログラム試験成績書で報告される形をとります。
そこで、SEが試験工程で行なうテストとしては次の3種類となり、これらのテストによりシステムがユーザに納品可能な状態であるかを判定します。

【プログラム受入テスト】
外注先から納品されたプログラムの品質確認
プログラム単体としての品質を確認するステップ

【プログラム結合テスト】
プログラムを組合せて行なうテスト
システムに要求された機能要件が実現できているかを検証するステップ

【システム総合テスト】
実際の業務を意識したシステムとしてテスト
実業務で問題なく運用できるかを非機能要件を含めて検証するステップ

4種類のテスト

したがって、実施されるテストには、次の4種類が存在することとなります。
・製作工程のテスト
①プログラム単体テスト…PEが製作時に行なうプログラム単体のテスト
・試験工程のテスト
②プログラム受入テスト…PEから納品されたプログラムの品質をSEが確認するテスト
③プログラム結合テスト…SEがプログラムを機能単位に組合せて行なうテスト
④システム総合テスト……SEがシステム全体として要求された機能を確認するテスト

システム開発V字モデルでの[単体テスト]は、プログラム設計で要求されている機能の検証作業ですが、これを製作時点でPEが行なう「プログラム単体テスト」と、プログラム納品時点でSEが行なう「プログラム受入テスト」に分割し、より品質を確保する手順にしています。

 ブログランキング・にほんブログ村へ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする